home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / c_toolbx.arc / BT_MACRO.H < prev    next >
Encoding:
C/C++ Source or Header  |  1988-03-30  |  820 b   |  27 lines

  1. /*  bt_macro.h - macros, constants, data types for BTREE internals */
  2.  
  3. #define    CURR     1    /* getting current block */
  4. #define    NOT_CURR    0    /* getting non-current block */
  5.  
  6.                 /* call a function using a ptr */
  7. #define    CALL(pfun)    (* (pfun) )
  8. #define    call(pfun)    (* (pfun) )
  9.  
  10.                 /* get adderss of entry in a block  */
  11. #define    ENT_ADR(pb,off) ((ENTRY *) ((char *)((pb)->entries)+off))
  12.  
  13.                 /* get size of an entry */
  14. #define    ENT_SIZE(pe)   (*(pci->psize))  (pe)
  15.  
  16.                 /* current position macros */
  17. #define    CB(l)     ( pci->pos[l].cblock )
  18. #define    CO(l)     ( pci->pos[l].coffset )
  19.  
  20. #define    FREE_LEVEL    (-1)    /* marks a block as free */
  21.  
  22.                 /* arguments for neighbor() */
  23. #define    LEFTN    (-1)    /* request left neighbor() */
  24. #define    RIGHTN      1    /* request right neighbor */
  25.  
  26.  
  27.